﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using StyleMVVM.DependencyInjection;
using StyleMVVM.DependencyInjection.Impl;

namespace StyleMVVM.DependencyInjection
{
	/// <summary>
	/// This attribute allows you to specify what priority to export this attribute at. 
	/// Note: Environment is used before priority when it comes time to sort exports.
	/// </summary>
	[AttributeUsage(AttributeTargets.Class)]
	public class ExportPriorityAttribute : Attribute, IExportPriorityAttribute
	{
		public ExportPriorityAttribute()
		{
		}

		public ExportPriorityAttribute(int priority)
		{
			Priority = priority;
		}

		/// <summary>
		/// The Export Priority
		/// </summary>
		public int Priority { get; set; }
	}
}